package com.zzyl.controller.customer;

import com.zzyl.base.ResponseResult;
import com.zzyl.dto.CustomerUserLoginDto;
import com.zzyl.service.CustomerLoginService;
import com.zzyl.vo.LoginVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/customer/user")
public class CustomerLoginController {

    @Autowired
    private CustomerLoginService customerLoginService;

    /**
     * 处理用户登录请求。
     *
     * @param dto 包含用户登录信息的传输对象，通常包括用户名和密码等认证所需信息。
     * @return 返回一个登录响应结果，其中包含登录状态和登录成功后的用户信息。
     */
    @PostMapping("/login")
    public ResponseResult<LoginVo> login(@RequestBody CustomerUserLoginDto dto){
//        根据dto中的信息验证用户，并准备登录响应数据
       LoginVo vo = customerLoginService.login(dto);
       return ResponseResult.success(vo);
    }
}
